import {DbConnection} from "./types/ConnectionManager";

/**
 * 数据库连接管理器
 * 负责创建、管理和关闭数据库连接
 */
export class ConnectionManager {
  /**
   * 单例实例
   */
  private static instanceObj: ConnectionManager;

  /**
   * 数据库连接映射
   * 键为连接名称，值为连接对象
   */
  private connections: Map<string, DbConnection> = new Map();

  /**
   * 私有构造函数，防止直接实例化
   */
  private constructor() {
  }

  /**
   * 获取单例实例
   * @returns 连接管理器实例
   */
  public static get instance(): ConnectionManager {
    if (!ConnectionManager.instanceObj) {
      ConnectionManager.instanceObj = new ConnectionManager();
    }
    return ConnectionManager.instanceObj;
  }
}
